# Makefile

# Compiler
CXX = g++

# Compiler Flags
CXXFLAGS = -std=c++11 -Wall -Wextra -O2

# Source Files
SRC = main.cpp \
      goboard.cpp \
      helpers.cpp \
      mcts.cpp

# Header Files
HEADERS = goboard.h \
          gotypes.h \
          zobrist.h \
          helpers.h \
          base.h \
          mcts.h

# Executable Name
EXEC = go_game

# Default Target
all: $(EXEC)

# Link Object Files to Create Executable
$(EXEC): $(SRC) $(HEADERS)
	$(CXX) $(CXXFLAGS) -o $(EXEC) $(SRC)

# Clean Target to Remove Executable and Object Files
clean:
	rm -f $(EXEC) *.o

.PHONY: all clean
